package com.apkcore.bl;

/**
 * https://leetcode-cn.com/problems/excel-sheet-column-title/
 * 这其实就是个26进制的题
 */
public class _168Excel表列名称 {

    public static void main(String[] args) {
        System.out.println(new _168Excel表列名称().convertToTitle(26+26));
    }
    /**
     * 对于一般进制转换的题目，只需要不断的对数字进行取模%运算，得到最后一位，然后/运算，去除最后一位，直到变为0
     * 本题是从1开始的，可以先进行--操作
     */
    public String convertToTitle(int columnNumber) {
        if (columnNumber <= 0) {
            return "";
        }
        StringBuilder sb = new StringBuilder();
        while (columnNumber > 0) {
            columnNumber--;
            sb.append((char) (columnNumber % 26 + 'A'));
            columnNumber /= 26;
        }
        sb.reverse();
        return sb.toString();
    }
}
